Finding ID | Version | Rule ID | IA Controls | Severity |
---|---|---|---|---|
V-224242 | EP11-00-013200 | SV-224242r508023_rule | Medium |
Description |
---|
Use of weak or not validated cryptographic algorithms undermines the purposes of utilizing encryption and digital signatures to protect data. Weak algorithms can be easily broken and not validated cryptographic modules may not implement algorithms correctly. Unapproved cryptographic modules or algorithms should not be relied on for authentication, confidentiality, or integrity. Weak cryptography could allow an attacker to gain access to and modify data stored in the database as well as the administration settings of the DBMS. Applications, including DBMSs, utilizing cryptography are required to use approved NIST FIPS 140-2 validated cryptographic modules that meet the requirements of applicable federal laws, Executive Orders, directives, policies, regulations, standards, and guidance. The security functions validated as part of FIPS 140-2 for cryptographic modules are described in FIPS 140-2 Annex A. NSA Type-X (where X=1, 2, 3, 4) products are NSA-certified, hardware-based encryption modules. Postgres uses OpenSSL for the underlying encryption layer. Organizations must obtain and use a FIPS 140-2 certified distribution of OpenSSL or build their own FIPS 140-2 OpenSSL libraries. EnterpriseDB has a FIPS 140-2 validated set of cryptographic modules for use with OpenSSL on Windows to meet this requirement for EDB Postgres Advanced Server deployments. When the EDB FIPS 140-2 certified cryptographic modules are configured properly, an EDB Postgres Advanced Server will fail to start if non-FIPS 140-2 ciphers are specified for the Postgres ssl_ciphers parameter. To test whether the FIPS 140-2 compliant configuration is working, temporarily set the "ssl_ciphers" parameter in the postgresql.conf file to 'RC4-SHA' and then attempt to restart the database service. Since "RC4-SHA" is not a FIPS 140-2 approved cipher, the database will fail to start. On Windows, using the Event Viewer, a "FATAL: could not set the cipher list (no valid ciphers available)" error will be found under "Event Viewer (Local) >> Windows Logs >> Application". |
STIG | Date |
---|---|
EDB Postgres Advanced Server v11 on Windows Security Technical Implementation Guide | 2020-09-23 |
Check Text ( C-25915r495743_chk ) |
---|
If any uncommented lines in The "ssleay32_dll" and "libeay32.dll" files in If the installed EDB v11 is not update 11.6 or greater, this is a finding. If C:\usr\local\ssl\openssl.cnf does not exist with these contents, or if an System Environment variable called OPENSSL_CONF pointing to a file with these contents has not been created, this is a finding: HOME = . RANDFILE = $ENV::HOME/.rnd openssl_conf=openssl_conf_section [openssl_conf_section] alg_section=evp_settings [evp_settings] fips_mode=yes |
Fix Text (F-25903r495744_fix) |
---|
Edit If the EDB Postgres Advanced Server minor version is less than version 11.6, install the 11.6 update or later version or contact EnterpriseDB to obtain a copy of the FIPS 140-2 compliant versions of the "ssleay32.dll" and "libeay32.dll" files and replace the "ssleay32.dll" and "libeay32.dll" files in Create C:\usr\local\ssl\openssl.cnf or another file referenced by a System Environment variable called OPENSSL_CONF with these contents: HOME = . RANDFILE = $ENV::HOME/.rnd openssl_conf=openssl_conf_section [openssl_conf_section] alg_section=evp_settings [evp_settings] fips_mode=yes Restart the Postgres server via the Services administration GUI. |